using GammaJul.ReSharper.GammaXaml.Highlightings.Xaml;
using JetBrains.Annotations;
using JetBrains.ProjectModel;
using JetBrains.ReSharper.Daemon;
using JetBrains.ReSharper.Psi.Xaml.Impl.Tree;

[assembly: RegisterConfigurableSeverity(
	RedundantEmptyCollectionSetterHighlighting.SeverityId,
	null,
	HighlightingGroupIds.CodeRedundancy,
	RedundantEmptyCollectionSetterHighlighting.Description,
	RedundantEmptyCollectionSetterHighlighting.Description,
	Severity.SUGGESTION,
	false)]

namespace GammaJul.ReSharper.GammaXaml.Highlightings.Xaml {

	/// <summary>
	/// An highlighting that indicates that an empty collection setter is redundant.
	/// </summary>
	[ConfigurableSeverityHighlighting(SeverityId, XamlProjectFileType.Name, AttributeId = HighlightingAttributeIds.DEADCODE_ATTRIBUTE, OverlapResolve = OverlapResolveKind.DEADCODE)]
	public class RedundantEmptyCollectionSetterHighlighting : DeadCodeSetterHighlightingBase {
		internal const string SeverityId = "Xaml.RedundantEmptyCollectionSetter";
		internal const string Description = "An empty collection setter is redundant.";

		public override string ToolTip {
			get { return Description; }
		}
		
		public RedundantEmptyCollectionSetterHighlighting([NotNull] IPropertySetter propertySetter)
			: base(propertySetter) {
		}
	}

}
